home *** CD-ROM | disk | FTP | other *** search
/ PC World 2000 May / PCWorld_2000-05_cd.bin / Hardware / Drivers / tnt / Creative Support Driver Finder_soubory / dropmenus.js < prev    next >
Text File  |  2000-03-27  |  10KB  |  236 lines

  1. // Drop-down menu v1.1
  2. // -------------------
  3. // Drop-down menus for Creative-Asia
  4. // 
  5. // Revision history:
  6. // 1.0    First version, simple show/hide of menu on mouseover
  7. // 1.1  Current version, with "wipe down" transition for showing menu, "wipe up" transition for hiding menu.
  8. //
  9. // All menus should be defined with a <DIV> tag, with the visibility set to "hidden"
  10. // The showmenu() function should then be called to make it visible.
  11. // To hide the menu, call hidemenu()
  12. //
  13.  
  14. // Setup defaults
  15. if ( trans==null )
  16.     var trans=true;
  17.  
  18. if ( duration==null )
  19.     var duration=0.3;
  20.  
  21. menuOn=false;
  22.  
  23. document.onclick=hidemenu2;
  24.  
  25. // Test for Internet Explorer 4.0
  26. function IsIE4()    {
  27.     return ( navigator.appName == "Microsoft Internet Explorer" && parseInt( navigator.appVersion ) >= 4 );
  28. }
  29.  
  30.  
  31. // Shows the menu
  32. function showmenu2( menuNum )
  33. {
  34.  
  35.     if ( IsIE4() )    {
  36.         var a=document.all.item("menu");
  37.  
  38.         // Only allow mouseover to take place after the document is completely loaded
  39.         if ( document.readyState == "complete" )    {
  40.             hidemenu();                                                // Hide every other menu which might be displaying at this time
  41.  
  42.             toggleFlash();                        
  43.             
  44.             // Show the desired menu
  45.             if ( a(menuNum))    {                                    // Check if the menu exists, if not, ignore
  46.                 if ( a(menuNum).filters.item(0) && trans==true )    {                // Only apply transition if its defined in the menu itself, otherwise, simply make it visible
  47.                     a(menuNum).filters.item(0).transition=5;        // Set Transition to "wipe down"
  48.                     if ( a(menuNum).filters.item(0).status == 0 )    
  49.                         a(menuNum).filters.item(0).apply();            // Apply the transition effect
  50.                     a(menuNum).style.visibility="visible";            // Set the final state of the menu (i.e. make it visible)
  51.                     a(menuNum).filters.item(0).play( duration );                // "Play" the transition
  52.                 }    
  53.                 else
  54.                     a(menuNum).style.visibility="visible";            // Simply make the menu visible if it has no transition filters defined
  55.             }
  56.         }
  57.     menuOn=true;
  58.     return true;
  59.     }
  60. }
  61.  
  62. // Hides the menu
  63. function hidemenu2()
  64. {
  65.  
  66.     var a;
  67.     if ( IsIE4() )    {
  68.         if ( menuOn )    {        
  69.             a=document.all.item("menu");
  70.             if ( a != null )    {
  71.                 if ( a.length != null )    {
  72.                     for (i=0; i<a.length; i++)    {
  73.                         menuNum=i;
  74.                         if( a(menuNum).filters.item(0) && trans==true )    {    
  75.                             if ( a(menuNum).filters.item(0).status == 0 )    {
  76.                                 a(menuNum).filters.item(0).transition=4;
  77.                                 a(menuNum).filters.item(0).apply();
  78.                                 a(i).style.visibility="hidden";
  79.                                 a(menuNum).filters.item(0).play( duration );
  80.                             }
  81.                             else
  82.                                 a(i).style.visibility="hidden";
  83.                         }
  84.                         else
  85.                             a(i).style.visibility="hidden";
  86.                     }    
  87.                 }
  88.             }
  89.         }
  90.         else
  91.             return true;
  92.     }
  93.     menuOn=false;
  94.     return true;
  95. }
  96.  
  97. // All the required menus should be defined here.
  98. function drawmenus()
  99. {
  100.     var s;
  101.  
  102.     if ( IsIE4() )    {
  103.         // Products Menu
  104.  
  105.         s=    '<div id="menu" style="position:absolute; left:170; top:87; z-index:1; visibility:hidden; filter: revealtrans(duration=0.25, transition=5)">';
  106.         s +=    '<table cellpadding="4" cellspacing="1" border="0" width="115" BGCOLOR="#ff9933">';
  107.         s +=    '<tr>';
  108.         s +=  '    <td bgcolor="#ffffcc">';
  109.         s +=    '    <font face="Arial" size=1 class="dropmenutext">';
  110.         s +=    '    <a href="/sound/" class="dropmenuhighlite2">Audio</a><br>';
  111.         s +=    '    <a href="/speakers/" class="dropmenuhighlite2">Speakers</a><br>';
  112.         s +=    '    <a href="/digital-audio/" class="dropmenuhighlite2">Digital Audio Player</a><br>';
  113.         s +=    '    <a href="/graphics/" class="dropmenuhighlite2">Graphics</a><br>';
  114.         s +=    '    <a href="/dvd/" class="dropmenuhighlite2">PC-DVD</a><br>';
  115.         s +=    '    <a href="/video/" class="dropmenuhighlite2">Video</a><br>';
  116.         s +=    '    <a href="/comms/" class="dropmenuhighlite2">Modems</a><br>';
  117.         s +=    '    <a href="/cd-drives/" class="dropmenuhighlite2">CD-RW & CD-ROM</a><br>';
  118.         s +=    '    <a href="/mmuk/" class="dropmenuhighlite2">Multimedia Kits</a><br>';        
  119.         s +=    '    <a href="/hansvision/" class="dropmenuhighlite2">Chinese Software</a><br>';
  120.         s +=    '    <a href="/accessories/" class="dropmenuhighlite2">Accessories</a><br>';
  121.         s +=    '    </font>';
  122.         s +=    '    </td>';
  123.         s +=    '</tr>';
  124.         s +=    '</table>';
  125.         s +=    '</div>';
  126.  
  127.         // Shopping Menu    
  128.         s +=    '<div id="menu" style="position:absolute; left:210; top:87; z-index:1; visibility:hidden; filter: revealtrans(duration=0.25, transition=5)">';
  129.         s +=    '<table cellpadding="4" cellspacing="1" border="0" width="120" BGCOLOR="#ff9933">';
  130.         s +=    '<tr>';
  131.         s +=  '    <td bgcolor="#ffffcc">';
  132.         s +=    '    <font face="Arial" size=1 class="dropmenutext">';
  133.         s +=    '    <a href="/shopping/registration.html" class="dropmenuhighlite2">Registration</a><br>';
  134.         s +=    '    <a href="http://www.blasterpc.com.sg/msprotect/ncommerce3/ExecMacro/apg/selcountry.d2w/report?mode=shoppingcart" class="dropmenuhighlite2">Shopping Cart</a><br>';
  135.         s +=    '    <a href="http://www.blasterpc.com.sg/msprotect/ncommerce3/ExecMacro/apg/selcountry.d2w/report?mode=checkout" class="dropmenuhighlite2">Checkout</a><br>';
  136.         s +=    '    <a href="/shopping/custserv.html" class="dropmenuhighlite2">Customer Service</a><br>';
  137.         s +=    '    <hr color="#ff9933" size=1>';
  138.         s +=    '    <a href="/shopping/sound.html" class="dropmenuhighlite2">Sound</a><br>';
  139.         s +=    '    </font>';
  140.         s +=    '    </td>';
  141.         s +=    '</tr>';
  142.         s +=    '</table>';
  143.         s +=    '</div>';
  144.  
  145.         // Support Menu            
  146.         s +=    '<div id="menu" style="position:absolute; left:240; top:87; z-index:1; visibility:hidden; filter: revealtrans(duration=0.25, transition=5)">';
  147.         s +=    '<table cellpadding="4" cellspacing="1" border="0" width="120" BGCOLOR="#ff9933">';
  148.         s +=    '<tr>';
  149.         s +=  '    <td bgcolor="#ffffcc">';
  150.         s +=    '    <font face="Arial" size=1 class="dropmenutext">';
  151.         s +=    '    <a href="/support/drivers/" class="dropmenuhighlite2">Drivers</a><br>';
  152.         s +=    '    <a href="/support/faqs/" class="dropmenuhighlite2">FAQs</a><br>';
  153.         s +=    '    <a href="/support/manuals/" class="dropmenuhighlite2">Online Manuals</a><br>';
  154.         s +=    '    <a href="/support/specs/" class="dropmenuhighlite2">Technical Specs</a><br>';
  155.         s +=    '    <a href="/support/support.html" class="dropmenuhighlite2">Contact Us</a><br>';
  156.         s +=    '    </font>';
  157.         s +=    '    </td>';
  158.         s +=    '</tr>';
  159.         s +=    '</table>';
  160.         s +=    '</div>';
  161.     
  162.         // Press Menu
  163.         s +=    '<div id="menu" style="position:absolute; left:295; top:87; z-index:1; visibility:hidden; filter: revealtrans(duration=0.25, transition=5)">';
  164.         s +=    '<table cellpadding="4" cellspacing="1" border="0" width="120" BGCOLOR="#ff9933">';
  165.         s +=    '<tr>';
  166.         s +=  '    <td bgcolor="#ffffcc">';
  167.         s +=    '    <font face="Arial" size=1 class="dropmenutext">';
  168.         s +=    '    <a href="/press/2000/" class="dropmenuhighlite2">2000 Releases</a><br>';
  169.         s +=    '    <a href="/press/1999/" class="dropmenuhighlite2">1999 Releases</a><br>';
  170.         s +=    '    <a href="/press/1998/" class="dropmenuhighlite2">1998 Releases</a><br>';
  171.         s +=    '    <a href="/press/1997" class="dropmenuhighlite2">1997 Releases</a><br>';
  172.         s +=    '    <a href="/press/pfact/index.html" class="dropmenuhighlite2">Product Info</a><br>';
  173.         s +=    '    <hr color="#ff9933" size=1>';
  174.         s +=    '    <a href="/press/backgrounder.html" class="dropmenuhighlite2">Backgrounder</a><br>';
  175.         s +=    '    <a href="/press/fact-sheet.html" class="dropmenuhighlite2">Fact Sheet</a><br>';
  176.         s +=    '    <a href="/press/milestones/1999.html" class="dropmenuhighlite2">Milestones</a><br>';
  177.         s +=    '    <a href="/press/subsidiaries/asia.html" class="dropmenuhighlite2">Subsidiaries</a><br>';
  178.         s +=    '    <a href="/press/awards/2000.html" class="dropmenuhighlite2">Awards</a><br>';
  179.         s +=    '    </font>';
  180.         s +=    '    </td>';
  181.         s +=    '</tr>';
  182.         s +=    '</table>';
  183.         s +=    '</div>';
  184.  
  185.         // Jobs Menu
  186.         s +=    '<div id="menu" style="position:absolute; left:350; top:87; z-index:1; visibility:hidden; filter: revealtrans(duration=0.25, transition=5)">';
  187.         s +=    '<table cellpadding="4" cellspacing="1" border="0" width="120" BGCOLOR="#ff9933">';
  188.         s +=    '<tr>';
  189.         s +=  '    <td bgcolor="#ffffcc">';
  190.         s +=    '    <font face="Arial" size=1 class="dropmenutext">';
  191.         s +=    '    <a href="/jobs/mission.html" class="dropmenuhighlite2">Vision & Mission</a><br>';
  192.         s +=    '    <a href="/jobs/culture.html" class="dropmenuhighlite2">Creative Culture</a><br>';
  193.         s +=    '    <a href="/jobs/" class="dropmenuhighlite2">Join Our Family</a><br>';
  194.         s +=    '    <a href="/jobs/resume.html" class="dropmenuhighlite2">Online Resume</a><br>';
  195.         s +=    '    <a href="/jobs/hq.html" class="dropmenuhighlite2">Singapore HQ</a><br>';
  196.         s +=    '    <a href="/jobs/map.html" class="dropmenuhighlite2">How to Get Here</a><br>';
  197.         s +=    '    </font>';
  198.         s +=    '    </td>';
  199.         s +=    '</tr>';
  200.         s +=    '</table>';
  201.         s +=    '</div>';
  202.  
  203.         // Feedback Menu
  204.         s +=    '<div id="menu" style="position:absolute; left:400; top:87; z-index:1; visibility:hidden; filter: revealtrans(duration=0.25, transition=5)">';
  205.         s +=    '<table cellpadding="4" cellspacing="1" border="0" width="140" BGCOLOR="#ff9933">';
  206.         s +=    '<tr>';
  207.         s +=  '    <td bgcolor="#ffffcc">';
  208.         s +=    '    <font face="Arial" size=1 class="dropmenutext">';
  209.         s +=    '    <a href="/feedback/support.html" class="dropmenuhighlite2">Technical Support</a><br>';
  210.         s +=    '    <a href="/feedback/disty.html" class="dropmenuhighlite2">Be a Dealer/Distributor</a><br>';
  211.         s +=    '    <a href="/feedback/webmaster.html" class="dropmenuhighlite2">Webmaster</a><br>';
  212.         s +=    '    <a href="/feedback/suggestions.html" class="dropmenuhighlite2">Suggestions</a><br>';
  213.         s +=    '    </font>';
  214.         s +=    '    </td>';
  215.         s +=    '</tr>';
  216.         s +=    '</table>';
  217.         s +=    '</div>';
  218.  
  219.         document.write( s );
  220.     }
  221. }
  222.  
  223. function toggleFlash( n )
  224. {
  225.     if ( document.all("staticImg") && document.all("flash") )    {
  226.         if ( n==1 )    {
  227.             staticImg.style.display="none";
  228.             flash.style.display="block";
  229.         }
  230.         else    {
  231.             staticImg.style.display="block";
  232.             flash.style.display="none";
  233.         }
  234.     }
  235. }
  236.